Příkaz canvas.create_text(100, 70, text='Ahoj') zapíše text “Ahoj” na souřadnice [100, 70]. Parametry tohoto příkazu jsou souřadnice středu zadaného textu. Text je psán tak, že svisle i vodorovně jsou souřadnice přesně vycentrovány ve středu psaného textu. Pomocí parametru text zadáme právě ten text, který chceme napsat.
import tkinter
canvas = tkinter.Canvas()
canvas.pack()
canvas.create_text(100, 70, text='Ahoj')
V příkazu můžeme také pomocí parametru font určit typ, velikost a řez písma. Například font='Arial 70 bold'. Tímto způsobem můžeme zadávat pouze jednoslovné názvy písem. Víceslovný název se zadává složitějším způsobem. Nám postačí základní varianty, jako
Arial, Times, Courier, Helvetica,20),bold, italic, underline, overstrike. Styl může tvořit víc slov dohromady (oddělených mezerou). Pořadí stylů nehraje roli.canvas.create_text(100, 70, text='Ahoj')
canvas.create_text(100, 100, text='Světe', font='Arial 40 bold')
Program vypíše následující texty:
Barvu výplně písma určíme parametrem fill, stejně jako v příkazech, které již známe:
canvas.create_text(100, 70, text='Ahoj', fill='green')
canvas.create_text(100, 100, text='Světe', font='Arial 40 bold', fill='orange')
Snadno jde například vytvořit stínované písmo:
canvas.create_text(122, 72, text='Ahoj Světe!', font='Arial 40 bold', fill='gray')
canvas.create_text(120, 70, text='Ahoj Světe!', font='Arial 40 bold', fill='gold')
Písmo můžeme také otáčet pomocí parametru angle:
canvas.create_text(180, 100, text='Světe', font='Arial 70 bold', fill='orange', angle=90)
canvas.create_text(130, 90, text='Ahoj', fill='green', font='Arial 40 bold italic')
Nápis “Světe” jsme otočili o 90 stupňů. Nejprve se nakreslí tento nápis a poté se zeleně napíše “Ahoj”. Když upravíte úhel, text se otočí kolem zadané souřadnice, což je přesný střed textu (fiktivně opsaný obdélník textu). Rotace určuje úhel proti směru hodinových ručiček. Úhel 180 stupňů obrátí text vzhůru nohama. Pokud chceme text otočit ve směru hodinových ručiček, můžeme použít záporný úhel.
create_textPříkaz create_text umí vypsat i čísla nebo hodnoty výrazů. Zjisti, co vypíšou následující příkazy:
canvas.create_text(100, 100, text=23+7)
canvas.create_text(100, 120, text="23+7")
Nakreslete tyto značky. Velikosti si zvolte podle vlastního uvážení, nejvíce však bodů. Snažte se co nejvíce přiblížit předloze: